package cn.message.service;

import cn.itcast.pojo.horsemanWeightAndSum;
import cn.itcast.pojo.order;
import cn.itcast.pojo.orderItem;
import cn.itcast.pojo.recycleDetail;

import java.util.List;

/**
 * @author 郭智超
 * @create 2020-04-15 21:00
 */
public interface IShowChartService {

    //获取一天中所有人员占的总货量比例
    List<recycleDetail> getPieChart();

    //每日货量变化（即折线图）
    List<recycleDetail> getLineChart();

    //获取一个月中每个人的收货量
    List<recycleDetail> getBarChart();




    //---------------------------------------------


    /**
     * 骑手的货量与金额
     * @return
     */
    List<horsemanWeightAndSum> getHorsemanWeightAndSum();

    /**
     * 系统成交总重量
     * @return
     */
    Double getTotalWeight();

    /**
     * 系统成交总金额
     * @return
     */
    Double getTotalSum();

    /**
     * 累计下单次数
     * @return
     */
    int getOrderCount();

    /**
     * 累计用户人数
     * @return
     */
    int getUserCount();

    /**
     * 获取5月份每日货量
     * @return
     */
    List<orderItem> getEverydayCommodity();

    /**
     * 回收重量类型分布
     * @return
     */
    List<orderItem> weightDistribution();

    /**
     * 用户下单次数分布图
     * @return
     */
    List<order> orderCountDistribution();

    /**
     * 回收区域重量分布
     * @return
     */
    List<order> weightCountyDistribution();

    /**
     * 从用户地址表中查询用户的区地址插入到订单表中的区地址字段
     */
    void insertOrderDistrict();

    /**
     * 获取日最高货量
     * @return
     */
    double getMaxCommodity();
}
